#e
#Title[u-0x̗v]
#Text[]
#ScriptVersion[2]

script_enemy_main {
    let imgBoss = GetCurrentScriptDirectory~".\chirno.png";

    @Initialize {

        LoadGraphic(imgBoss);
        SetTexture(imgBoss);
        SetLife(5000);
        SetInvincibility(300);
        CutIn(YOUMU,"u-0x̗v", "", 0, 0, 0, 0);
        SetScore(4000000);
        SetTimer(90);


        Tshot;
        Tmove;
    }

    @MainLoop {
        SetCollisionA(GetX, GetY, 24);
        SetCollisionB(GetX, GetY, 24);

        yield;
    }

    @DrawLoop {
        DrawGraphic(GetX, GetY);
    }

    @Finalize {
        DeleteGraphic(imgBoss);
    }

    sub standBy {

        SetMovePosition02(228, 136, 30);
        setGraphicMove;
        wait(30);
        setGraphicStop;
    }

    sub setGraphicStop  { SetGraphicRect(  0,   0, 128, 128); }
    sub setGraphicLeft  { SetGraphicRect(256,   0, 384, 128); }
    sub setGraphicRight { SetGraphicRect(256, 256, 384, 384); }

    sub setGraphicMove {
        if(GetSpeedX < 0) {
            setGraphicLeft;
        } else {
            setGraphicRight;
        }
    }

    task Tshot{
        yield;
         let id = 1;
        wait(100);
        loop{
           CreateShotA(id,GetX,GetY,0); 
           SetShotDataA_XY(id,0,rand(4,-4),-2,0,0,8,2,BLUE23);   
           SetShotDataA_XY(id,56,0,0,0,0.02,0,4,BLUE23);   
           FireShot(id);
           id ++;
          loop(1){yield;}
         }     
      }

    task Tmove{
      yield;
        standBy;
        setGraphicStop;
       loop(200){yield;}
        CreateShot01(GetX,GetY,0.6,90,AQUA03,0);
        loop{
         SetMovePosition02(GetPlayerX,GetClipMinY + 120,30); 
         setGraphicMove;
         loop(30){yield;}
         setGraphicStop;
         loop(170){yield;}
        CreateShot01(GetX,GetY,0.5,90,AQUA03,0);
              }    
   }
     function wait(w) {
        loop(w) { yield; }
    }
}